← Index
NYTProf Performance Profile   
For ../prof.pl
  Run on Wed Dec 14 15:57:08 2022
Reported on Wed Dec 14 16:00:37 2022

Filename(eval 423)[/Users/ether/.perlbrew/libs/36.0@std/lib/perl5/Sub/Quote.pm:3]
StatementsExecuted 50 statements in 490µs
Eval Invoked At/Users/ether/.perlbrew/libs/36.0@std/lib/perl5/Sub/Quote.pm line 3
Sibling evals1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113
Subroutines
Calls P F Exclusive
Time
Inclusive
Time
Subroutine
51130µs39µsType::Tiny::::__ANON__[:16]Type::Tiny::__ANON__[:16]
1116µs6µsType::Tiny::::BEGIN@9.326Type::Tiny::BEGIN@9.326
1115µs15µsType::Tiny::::BEGIN@16.327Type::Tiny::BEGIN@16.327
Call graph for these subroutines as a Graphviz dot language file.
Line State
ments
Time
on line
Calls Time
in subs
Code
1{
221µs my $_UNQUOTED = ${$_[1]->{"\$_UNQUOTED"}};
310s my $_QUOTED = ${$_[1]->{"\$_QUOTED"}};
4 package Type::Tiny;
5
# spent 39µs (30+9) within Type::Tiny::__ANON__[(eval 423)[/Users/ether/.perlbrew/libs/36.0@std/lib/perl5/Sub/Quote.pm:3]:16] which was called 5 times, avg 8µs/call: # 5 times (30µs+9µs) by JSON::Schema::Modern::__ANON__[/Users/ether/.perlbrew/libs/36.0@std/lib/perl5/JSON/Schema/Modern.pm:124] at line 177 of Sub/Defer.pm, avg 8µs/call
$$_UNQUOTED = sub {
6 ($_QUOTED,$_UNQUOTED) if 0;
7# BEGIN quote_sub PRELUDE
8package Type::Tiny;
9
# spent 6µs within Type::Tiny::BEGIN@9.326 which was called: # once (6µs+0s) by Sub::Quote::_clean_eval at line 14
BEGIN {
1010s $^H = 1762;
1111µs ${^WARNING_BITS} = "UUUUUUUUUUUUUUUUUUUU";
1213µs %^H = (
13 );
14155µs16µs}
# spent 6µs making 1 call to Type::Tiny::BEGIN@9.326
15# END quote_sub PRELUDE
1643427µs2234µs
# spent 15µs (5+10) within Type::Tiny::BEGIN@16.327 which was called: # once (5µs+10µs) by Sub::Quote::_clean_eval at line 16
do { no warnings "void"; package Type::Tiny; (do { package Type::Tiny; (Ref::Util::XS::is_plain_hashref($_[0])) and (not grep {my $v = ($_[0])->{$_};not((/\A(?:date\-time|date|time|duration|email|idn\-email|hostname|idn\-hostname|ipv4|ipv6|uri|uri\-reference|iri|iri\-reference|uuid|uri\-template|json\-pointer|relative\-json\-pointer|regex)\z/) or (((!!1)) and (do { package Type::Tiny; (Ref::Util::XS::is_plain_hashref($v)) and not(grep !/\A(?:type|sub)\z/, keys %{$v}) and exists($v->{"type"}) and (defined($v->{"type"}) and !ref($v->{"type"}) and $v->{"type"} =~ m{\A(?:(?:array|boolean|integer|nu(?:ll|mber)|object|string))\z}) and exists($v->{"sub"}) and do { package Type::Tiny; Ref::Util::XS::is_plain_coderef($v->{"sub"}) } })))} keys %{$_[0]}) and (!exists $_[0]->{"date-time"} or (do { package Type::Tiny; Ref::Util::XS::is_plain_coderef($_[0]->{"date-time"}) })) and (!exists $_[0]->{"date"} or (do { package Type::Tiny; Ref::Util::XS::is_plain_coderef($_[0]->{"date"}) })) and (!exists $_[0]->{"time"} or (do { package Type::Tiny; Ref::Util::XS::is_plain_coderef($_[0]->{"time"}) })) and (!exists $_[0]->{"duration"} or (do { package Type::Tiny; Ref::Util::XS::is_plain_coderef($_[0]->{"duration"}) })) and (!exists $_[0]->{"email"} or (do { package Type::Tiny; Ref::Util::XS::is_plain_coderef($_[0]->{"email"}) })) and (!exists $_[0]->{"idn-email"} or (do { package Type::Tiny; Ref::Util::XS::is_plain_coderef($_[0]->{"idn-email"}) })) and (!exists $_[0]->{"hostname"} or (do { package Type::Tiny; Ref::Util::XS::is_plain_coderef($_[0]->{"hostname"}) })) and (!exists $_[0]->{"idn-hostname"} or (do { package Type::Tiny; Ref::Util::XS::is_plain_coderef($_[0]->{"idn-hostname"}) })) and (!exists $_[0]->{"ipv4"} or (do { package Type::Tiny; Ref::Util::XS::is_plain_coderef($_[0]->{"ipv4"}) })) and (!exists $_[0]->{"ipv6"} or (do { package Type::Tiny; Ref::Util::XS::is_plain_coderef($_[0]->{"ipv6"}) })) and (!exists $_[0]->{"uri"} or (do { package Type::Tiny; Ref::Util::XS::is_plain_coderef($_[0]->{"uri"}) })) and (!exists $_[0]->{"uri-reference"} or (do { package Type::Tiny; Ref::Util::XS::is_plain_coderef($_[0]->{"uri-reference"}) })) and (!exists $_[0]->{"iri"} or (do { package Type::Tiny; Ref::Util::XS::is_plain_coderef($_[0]->{"iri"}) })) and (!exists $_[0]->{"iri-reference"} or (do { package Type::Tiny; Ref::Util::XS::is_plain_coderef($_[0]->{"iri-reference"}) })) and (!exists $_[0]->{"uuid"} or (do { package Type::Tiny; Ref::Util::XS::is_plain_coderef($_[0]->{"uuid"}) })) and (!exists $_[0]->{"uri-template"} or (do { package Type::Tiny; Ref::Util::XS::is_plain_coderef($_[0]->{"uri-template"}) })) and (!exists $_[0]->{"json-pointer"} or (do { package Type::Tiny; Ref::Util::XS::is_plain_coderef($_[0]->{"json-pointer"}) })) and (!exists $_[0]->{"relative-json-pointer"} or (do { package Type::Tiny; Ref::Util::XS::is_plain_coderef($_[0]->{"relative-json-pointer"}) })) and (!exists $_[0]->{"regex"} or (do { package Type::Tiny; Ref::Util::XS::is_plain_coderef($_[0]->{"regex"}) })) }) or Type::Tiny::_failed_check(64, "Dict[date=>Optional[CodeRef],date-time=>Optional[CodeRef],duration=>Optional[CodeRef],email=>Optional[CodeRef],hostname=>Optional[CodeRef],idn-email=>Optional[CodeRef],idn-hostname=>Optional[CodeRef],ipv4=>Optional[CodeRef],ipv6=>Optional[CodeRef],iri=>Optional[CodeRef],iri-reference=>Optional[CodeRef],json-pointer=>Optional[CodeRef],regex=>Optional[CodeRef],relative-json-pointer=>Optional[CodeRef],time=>Optional[CodeRef],uri=>Optional[CodeRef],uri-reference=>Optional[CodeRef],uri-template=>Optional[CodeRef],uuid=>Optional[CodeRef],Slurpy[HashRef[Dict[sub=>CodeRef,type=>Enum[\"null\",\"object\",\"array\",\"boolean\",\"string\",\"number\",\"integer\"]]]]]", $_[0], ); $_[0] }; };
# spent 15µs making 1 call to Type::Tiny::BEGIN@16.327 # spent 10µs making 1 call to warnings::unimport # spent 9µs making 20 calls to Type::Tiny::CORE:match, avg 450ns/call
17}
1813µs1;
19
20;